Data structures are used to store data, and there are various types of data structures. One type of data structure is a table structure, in which the data is maintained in rows and columns. The data can represent any kind of information. As just one example, configuration information is often maintained in a data structure, such as a database oriented table, in which the rows include various configured resources and the columns include the various attributes associated with those resources. In some cases, the same resource is included in multiple different overlapping domains (e.g., sets of nodes of a distributed system or cluster), and one or more of the attributes associated with that resource are different depending on the domain.
Currently, to represent the data of multiple domains, additional attribute columns are defined for each domain; an array of data definitions based on the domain are placed in the column; or even separate tables are utilized. If additional attribute columns are defined, the client must know which column to reference in which domain and must adjust the table definition as the number of such domains increases or decreases. If an array is used, access to the relevant information requires that the client index correctly to the proper value and update only that field. If separate tables are utilized, any update to a column with no domain orientation requires that all such tables be updated atomically.
The current solutions for representing multiple domains are inefficient. For example, the use of separate tables or the use of redundantly provided data for each domain needlessly increases the amount of storage used. Further, maintaining these tables also has inefficiencies associated therewith, since multiple tables or multiple sets of data need to be maintained.
Based on the foregoing, a need exists for an improved data structure to represent data of different domains that avoids the inefficiencies of current solutions. In one particular example, a need exists for a data structure in which common data among the domains is not replicated.